package com.fenye.testflow.model.entity.testflow;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fenye.testflow.model.entity.system.BaseEntity;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;
@Data
@Accessors(chain = true)
@TableName(autoResultMap = true)
public class TestRequest extends BaseEntity {
    private static final long serialVersionUID = 1L;

    private Integer projectId; // 所属项目id
    private String projectName; // 所属项目

    private String versionNumber; // 所属版本

    private String requestName; // 提测需求名称

    private Date plannedTestTime; // 计划提测时间

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date actualTestTime; // 实际提测时间

    private String smokeTestPlanUrl; // ms冒烟测试计划地址


    private String description; // 描述

    private Integer status; // 状态

    private Boolean isPostpone; // 是否提测延期
    private Date postponeTime; // 延期时间

    private Long testFailedNumber; // 提测失败次数

    private Integer createdBy; // 创建者

    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<Long> developers; // 开发人员ID列表

    @TableField(typeHandler = FastjsonTypeHandler.class)
    private List<Long> testers; // 测试人员ID列表
}
